package com.cmc.cloud.cmclink.doc.rpcservice;

import com.cmc.cloud.cmclink.fin.api.base.dto.req.DocBlnoBaseReqDTO;
import com.cmc.cloud.cmclink.fin.api.base.dto.req.DocBlnoChangeBaseReqDTO;

/**
 * 运费发送业财
 * 
 * @author dev89
 * @date 2025/08/13 15:27
 **/
public interface AccountTransfer {
    /**
     * 计费发送财务
     *
     * @param docBlnoBaseReq 运费参数
     * @return com.cmes.framework.common.pojo.CommonResult<java.lang.Boolean>
     */
    boolean createBlnoFreight(DocBlnoBaseReqDTO docBlnoBaseReq);

    /**
     * 计费变更发送财务
     *
     * @param blnoChangeBaseReq 运费变更参数
     * @return com.cmes.framework.common.pojo.CommonResult<java.lang.Boolean>
     */
    boolean createBlnoChangeFreight(DocBlnoChangeBaseReqDTO blnoChangeBaseReq);

    /**
     * 计费发送财务
     *
     * @param docBlnoBaseReq 运费参数
     * @param payType 成本费用c 收入费用 R
     * @return com.cmes.framework.common.pojo.CommonResult<java.lang.Boolean>
     */
    boolean createBlnoPay(DocBlnoBaseReqDTO docBlnoBaseReq, String payType);
}
